#pragma once

void UDialog(CWnd* pParent);

void mi(long n);
void ms(LPCWSTR sz);
void mis(long amount, ...);
void mh(DWORD n);
void ma(LPCSTR sz);
void mb(BYTE* b, int nBytes);
void showLastError ();
void swap ( long& a, long& b );

class u
{
public:
	u(void);
public:
	~u(void);

	static void MakeClick(POINT po);
	static void SendClick(CWnd* hWnd, POINT po);
	static void PostClick(CWnd* hWnd, POINT po);
	static void RegisterBalloon(HWND hWnd, HICON hIcon, TCHAR* szTitle, TCHAR* szTip, UINT uCallbackMsg);
	static void ShowBalloon(TCHAR* szText);
	static void DeleteBalloon();
	static int StringToByteArray(char *sz, BYTE *ba);
	static void StringToLower(TCHAR* sz);
	static void ByteArrayToString(BYTE* b, char* sz, int nBytes);
	static void CharToWide(LPCSTR sz, LPWSTR szw, int nBytes);
	static int ByteArrayCompare(BYTE* b1, BYTE* b2, int nBytes);
	static BOOL IsFileExist(LPCWSTR szFile);
	static HWND GetParentWindow(HWND hWnd, int iLayer);
	static void ShowCenter(CWnd *MyDialogPtr);
	static BOOL ShowOpenFile(HWND hWnd, LPWSTR szFileName, LPWSTR szFilter);
	static bool ShowGetFolder(LPWSTR folderpath, const TCHAR* szCaption, HWND hOwner);
};
